/*
 * @Descripttion: 购物车相关数据库操作
 * @version: 
 * @Author: 一氧化二氢
 * @Date: 2022-01-04 00:13:40
 * @lastEditorTime: Do no edit
 */
const Cart = require('../model/cart.model')
const { Op } = require('sequelize')
class CartService {
    async createOrUpdate(user_id, goods_id) {
        //根据user_id和goods_id查找购物车中是否存在此商品
        let res = await Cart.findOne({
            where: {
                [Op.and]: {
                    user_id,
                    goods_id,
                }
            }
        })
        if (res) {
            //如果存在，则将商品数加一
            await res.increment('number')
            return await res.reload()
        } else {
            //如果不存在，则在购物车中创建此商品
            return await Cart.create({
                user_id,
                goods_id
            })
        }
    }
}
module.exports = new CartService()
